Recently, Hypertext Transfer Protocol (HTTP) has been widely used for the delivery of real-time multimedia content over the Internet, such as in video streaming applications. Unlike the use of the Real-time Transport Protocol (RTP) over the User Datagram Protocol (UDP), HTTP is easy to configure and is typically granted traversal of firewalls and network address translators (NAT), which makes it attractive for multimedia streaming applications.
Several commercial solutions for adaptive streaming over HTTP, such as Microsoft® Smooth Streaming, Apple® Adaptive HTTP Live Streaming and Adobe® Dynamic Streaming, have been launched as well as standardization projects have been carried out. DASH has turned out to be a promising protocol for multimedia streaming applications, especially for multiview coded video bistreams. However, streaming clients typically maintain a relatively large buffer occupancy level in order to avoid playback interruptions due to throughput fluctuations. For viewpoint switching in MVC bitstreams this means that an excessive amount of views is transmitted to the client to enable immediate viewpoint switching.
An atomic unit in streaming ISOBMFF segments over DASH is a self-contained movie fragment, which is typically relatively large. DASH clients typically receive at least one entire self-contained movie fragment before processing it, hence a buffer occupancy level in DASH clients is typically at least one movie fragment.
For example, the quality of experience of free-viewpoint streaming applications may deteriorate significantly if the reaction to viewpoint switch requests is slow. This may be particularly true, when viewpoint switching takes place as response to head and/or gaze tracking.
Consequently, there is a need for a method for performing low-latency viewpoint switching when views are obtained using DASH, but at the same time keep the bitrate of the transmitted video as low as possible and the decoding complexity, in terms of computational and memory requirements, as low as possible.